withTransaction
目的 Purpose
Allows programmatic transactions using Spring's Transaction abstraction.
使用例 Examples
Account.withTransaction { status ->def source = Account.get(params.from) def dest = Account.get(params.to)
int amount = params.amount.toInteger() if (source.active) { source.balance -= amount
if (dest.active) { dest.amount += amount } else { status.setRollbackOnly() } } }
詳細 Description
The withTransaction
method accepts a Closure with a TransactionStatus argument. The TransactionStatus
object can be used to programmatically control rollback of the transaction.
Refer to the user guide section of Programmatic Transactions for more information.